
run diff if you like, the only difference between fig 5.0 and fig 5.1 is the proginf line, and the license text.


diff fig50.py fig51.py
3,5d2
< #### license: creative commons cc0 1.0 (public domain) 
< #### http://creativecommons.org/publicdomain/zero/1.0/ 
< proginf = "fig 5.0, apr 2020 mn aur pj"
6a4,18
> #    2015, 2016, 2017, 2018, 2020 by mn, pj
> #
> #    Permission to use, copy, modify, and/or distribute this software for any 
> #    purpose with or without fee is hereby granted.
> #
> #    THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 
> #    WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 
> #    MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 
> #    ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 
> #    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 
> #    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 
> #    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
> 
> proginf = "fig 5.1, jul 2022 mn aur pj"
> 
1733a1746,1747
> 
>
 

fig is still public domain software, and thats the idea. the date was changed (though the code was not) from 2020 to 2022 solely to show when this was done.

years ago, karl fogel voted against the acceptance of cc0 for osi (an organisation i dont care about in the slightest) making it officially "not an open source license" though the fsf did approve it as a gpl-compatible free software license.

one of the alleged issues with cc0 is that it explicitly denies the license having effect on patent holders. software patents should be abolished, many licenses make zero claims about patents or waive all patent rights, but with this explicit claim cc0 causes a few more parties to be concerned about usability than with licenses that dont mention the issue at all.

recently, fedora (another thing i dont care about in the slightest) decided to avoid all projects with code licensed / waived as cc0. perhaps thats a foolish thing for them to do. ive been promoting cc0 for years, i was a fan of it, i still love the idea, but if possible i want to avoid a license that makes too many people say "ewwww" unless theres a damned good reason for it. many people turn up their nose at copyleft licenses, but that doesnt matter if you believe copyleft is a good goal.

more than a year ago in 2021, creative commons joined a group of traitors in trying to destroy the career and reputation of richard stallman with lies and slander. despite this, i still considered cc0 a unique and wonderful license, from a time when cc was possibly less awful. i didnt spend much time thinking of ditching cc0 at that time. i did of course, weigh the pros and cons briefly before dismissing the idea.

between the brevity and utility of 0 clause bsd, karl fogels wisdom (disputed, by me) in giving cc0 the axe many years ago, fedoras concern with cc0 (which may have never come about if fogel had voted to bless it on osis behalf) and the utter treachery of creative commons (i still admire their founder, just not the org itself) i am giving serious thought to ditching cc0 and moving to 0-clause bsd for things i want to effectively be in the public domain. i am thus releasing fig 5.1 under 0 clause bsd.

please note, that my efforts to promote cc0 are not only as a free software advocate, but a free culture advocate and an advocate of the public domain. 0 clause bsd does not actually (not literally) waive copyright as cc0 does, there is no public domain dedication in it, but for fig that action has already taken place. code licensed (waived) under cc0 does not become unwaived when you walk away from cc0. you still have that option, for older versions.

fig was designed for stability-- most changes have been very small, the code itself has not changed in two entire years, and the earliest version is not yet 8 years old. exploration of related ideas or large extensions have instead made their way into forks, derivatives or other language dialects, while fig stayed the same. i do like these other dialects and experiments, though i tend to lean on use of fig instead-- practically all of the time. i do still code in python occasionally, but as an "everyday" solution fig is my go-to.

instead of waiving copyright for the public domain, which can be done as simply as this:

    i, the author of this work, hereby dedicate it to the public domain.



0 clause bsd, in laymans terms, appears to skip to the "if this is not possible" part of cc0, and simply grant every right you can possibly be granted. or specifically, it grants:


    Permission to use, copy, modify, and/or distribute this software for any 
    purpose with or without fee is hereby granted.


here the word "software" is not a problem; you can use this license for other types of work, just as you can with the gpl.

this is for the most part, a reasonable cc0 alternative. if you want to dedicate your work to the public domain (where possible), you can do that in a single line, in a different step. fig has, as said before, already had that waived.

if you have a cc0-licensed program or work, the license wouldnt likely stop me from using it. i dont necessarily think the concerns or fogel, osi or fedora are warranted. rather, i dont think there will ever be a "golden age of cc0", there are more moves to bring it down than up, and i dont like creative commons (the org) at all.

theres nothing wrong with rooting for the underdog, if there is cause to do so. i consider myself a fan of stallman, that he deserves to have his legacy protected from lies and slander, despite my opinions about the status of the organisation he founded and the status of the gnu project as well. if (yet) more people had stood up for him, if the coup had been fought against until it was driven out of the chance to become an occupation, that would be better than the way things are today.

with cc0, i just dont think the cause is there. it was a cool idea, it was a reasonable implementation, it has some alleged imperfections that may never amount to an issue-- other than a hypothetical one.

but cc0 is a tool i wanted to use to promote free software, free culture, and the public domain. i no longer believe it is ideal for that purpose. id rather use something more compatible, less problematic, closer to ideal for the purposes of free software, free culture and the public domain.

i am a fan (sometimes user) of the gpl(3) and the agpl, for copyleft. isc (basically the openbsd license) is a great license too. for the purpose of replacing cc0, 0 clause bsd is more appropriate / suited than isc. isc requires additional things of those who redistribute works-- while the point of cc0 (and 0 clause bsd) is to require as little as possible. thus isc is a great license-- but not necessarily for this purpose.

the author of the 0 clause bsd license, rob langley, has critics for applying this license to a particular piece of software. i have spoken with some of his critics, and based on this i have determined that the license itself was not the real problem-- the more important problem was applying it to that particular software.

thus, i am reasonably comfortable and confident with the idea of getting behind 0 clause bsd as an alternative to cc0. i have not officially moved that way yet, but as a first step, i offer my favourite piece of software with 0 clause bsd. you may now, if you prefer to, ignore the cc0 version of fig completely.

if i do go ahead and do this for other software, i will prioritise this for cc0 code i use and want to promote. i still think cc0-licensed code should be okay, ESPECIALLY the sort of code snippet that i publish so often, but i may relicense many of those things as well.

obviously, code ive released to the public domain is already in the public domain. its the exceptions i have no control over (such as in finland, or even fedora) where there is arguably a point in "relicensing" cc0 code. im not doing this for fedora (they wont ever use fig) rather, i do it foremost for those it may actually (at least hypothetically) help. i also do this to promote 0 clause bsd as an option.

note for completeness, that as of fig 5.0/5.1 i am the author of well over 99% of the code. the other credit is primarily for assistance, and any minor (if there are indeed any whatsoever) code contributions within fig should be trivial (from a copyright standpoint) and uncopyrightable in the first place. so far, contributors to fig are both aware of it and its cc0 status-- but not this most recent move to 0 clause bsd. if things go as planned, they will be informed of this move some time in the next 7 days. even if they objected (the possibility of which is extremely remote) there is essentially nothing they could do to change this. the surest exception would be, if they could convince me the the license is ill-suited to what i want to use it for.

sorry for the length of this text, i wanted to cover as much as i considered relevant to this decision.



figosdev

july 2022



    license:

    permission to use, copy, modify, and/or distribute this software for any 
    purpose with or without fee is hereby granted.


